/*
 * @Author: zhangshu
 * @email: shiliang.zhang@tuya.com
 * @LastEditors: Please set LastEditors
 * @file name: app_dev_register.h
 * @Description: 
 * @Copyright: HANGZHOU TUYA INFORMATION TECHNOLOGY CO.,LTD
 * @Company: http://www.tuya.com
 * @Date: 2022-02-08
 * @LastEditTime: 2022-02-08
 */
#ifndef __APP_DEV_REGISTER_H__
#define __APP_DEV_REGISTER_H__

#include "tal_endpoint_register.h"
#include "app_common.h"


#ifdef __cplusplus
extern "C" {
#endif  /* __cplusplus */

/**
 * @brief check if the cluster already in registertion list
 * NOTE: only for server clusters attributes
 *
 * @param[in] cluster_id: cluster id
 * @return TRUE if the cluster exists in registertion list or FALSE
 */
BOOL_T is_server_cluster_valid(UINT16_T cluster_id);

/**
 * @brief check if the attribute  of cluster already in registertion list
 * NOTE: only for server clusters attributes
 *
 * @param[in] cluster_id: cluster id
 * @param[in] attribute_id: attribute id
 * @return TRUE when in registertion list else FALSE
 */
BOOL_T is_server_attribute_valid(UINT16_T cluster_id, UINT16_T attribute_id);

/**
 * @brief register zigbee parameter
 * @return none
 */
VOID_T dev_zigbee_init(VOID_T);

#ifdef __cplusplus
}
#endif /* __cplusplus */

#endif
